Unless otherwise indicated herein, the materials described in this section are not prior art to the claims in this application and are not admitted to be prior art by inclusion in this section.
The anticipated widespread adoption of ubiquitous computing services in the near future may rely on the confidence of users that their privacy and security are assured. However, privacy and security may cost significantly in terms of complexity of communication protocol, computational intensity of encryption/decryption algorithms on the user's side, and time. To be cost-effective, the ubiquitous computing services may need new fast, computationally efficient, and robust means to communicate with each other securely and privately.
Conventional data encryption methods may be divided into two categories: symmetrical and asymmetrical. In symmetrical methods, the same key is used both for encryption and for decryption. Asymmetrical methods may have two different keys, of which one may be used for encryption and the other for decryption. The encryption key may be available to the public, whereas the decryption key may be kept secret.
A majority of encryption techniques may include two building blocks: substitution and transposition. Substitution includes replacement of an element of the plaintext with an element of ciphertext. Ciphertext is encrypted or encoded information, which contains a form of the original plaintext that is unreadable by a human or computer without the proper cipher to decrypt. Transposition includes rearranging an order of appearance of the elements of the plaintext.